home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Run Magazine ReRun 1985 Fall
/
rerun-1985-fall.d64
/
title maker
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
3KB
|
91 lines
10 rem: c-64 video tape titlemaker
20 rem: written by jim bernard
30 forx=28643to28842:reada:pokex,a:tt=tt+a:next
40 iftt<>20528thenprint"check data for error(s)":end
50 gosub410
60 poke52,48:poke56,48:poke56334,peek(56334)and254:poke1,peek(1)and251
70 fori=0to511:pokei+12288,peek(i+53247):next
75 fori=0to207:pokei+10000,peek(i+53255):next
80 fori=0to71:pokei+10208,peek(i+53639):next
85 fori=0to39:pokei+10280,peek(i+53527):next
90 fori=0to31:pokei+10320,peek(i+53584):next
95 fori=0to7:pokei+10352,peek(i+53615):next
100 fori=0to7:pokei+10360,peek(i+53503):next
105 fori=0to7:pokei+10368,peek(i+53751):next
110 fori=0to7:pokei+10376,peek(i+53911):next
115 sys28672
120 poke1,peek(1)or4
130 poke56334,peek(56334)or1
140 poke53272,28:printchr$(147):t=0:goto160
150 poke53272,21:end
160 lw=1024:ly=lw+1:lx=lw+40:lz=lw+41:t=1024
170 readp:p$=chr$(p):ifp=255thenwait653,1,0:poke53272,21:end
171 ifp=200thengosub1000
172 ifasc(p$)>48andasc(p$)<58then193
173 ifasc(p$)>64andasc(p$)<91then192
174 ifasc(p$)>34andasc(p$)<40then195
175 ifasc(p$)>41andasc(p$)<47then200
176 ifasc(p$)=32then205
177 ifasc(p$)=63then210
178 ifasc(p$)=211then215
179 ifasc(p$)=145thengosub270
180 ifasc(p$)=157thenlw=lw-2:lx=lx-2:ly=ly-2:lz=lz-2
181 iflw<tthen230
182 ifasc(p$)=17thengosub260
183 ifasc(p$)=29then230
184 ifasc(p$)=147then140
185 ifasc(p$)=19thent=0:goto160
186 ifasc(p$)=92thensys28651
187 ifasc(p$)=94thensys28647
188 ifasc(p$)=95thensys28643
189 ifasc(p$)=61thengosub280
190 ifasc(p$)=186then250
191 goto170
192 q=asc(p$):w=((q-65)*2)+64:goto220
193 q=asc(p$):w=((q-48)*2)+114:goto220
195 q=asc(p$):w=((q-35)*2)+134:goto220
200 q=asc(p$):w=((q-42)*2)+144:goto220
205 w=154:goto220
210 w=156:goto220
215 w=158:goto220
220 x=w+1:y=w+96:z=w+97
222 cl=peek(646):sc=54272:pokelw+sc,cl:pokelx+sc,cl:pokely+sc,cl:pokelz+sc,cl
225 pokelw,w:pokely,y:pokelx,x:pokelz,z
230 lw=lw+2:lx=lx+2:ly=ly+2:lz=lz+2
235 ifly>t+39thengosub260
240 goto170
250 poke214,22:end
260 t=t+80:lw=t:lx=lw+40:ly=lw+1:lz=lw+41
262 ift>1945thenpoke214,24:t=t-160:printchr$(17):goto260
265 return
270 t=t-80:lw=t:lx=lw+40:ly=lw+1:lz=lw+41:ift<1024thent=1104:goto270
275 return
280 fork=1to1500:next:return
290 open1,0:input#1,p$:close1:return
300 rem - data for machine language
310 data 238,134,2,96,238,32,208,96,238,33,208,96,0,24,173,3,112,105,8,141
320 data 3,112,201,0,208,3,238,4,112,162,0,189,16,39,72,74,74,74,74,168
330 data 185,155,112,157,0,50,157,1,50, 104,41,15,168,185,155,112,157,0,53,157
340 data 1,53,232,238,15,112,238,18,112,238,28,112,238,31,112,224,8,208,208,24
350 data 173,15,112,105,8,141,15,112,24,173,18,112,105,8,141,18,112,24,173,28
360 data 112,105,8,141,28,112,24,173,31,112,105,8,141,31,112,201,1,208,12,238
370 data16,112,238,19,112,238,29,112,238,32,112,173,32,112,201,56,240,3,76,240
380 data 111,169,0,141,15,112,141,28,112,169,1,141,18,112,141,31,112,169,50,141
390 data 16,112,141,19,112,169,53,141,29,112,141,32,112,169,16,141,3,112,169,39
400 data 141,4,112,96,0,3,12,15,48,51,60,63,192,195,204,207,240,243,252,255
410 printchr$(147):poke53280,7:poke53281,7:poke646,9
415 return
700 rem - data for video tape message from asc ii appendix
710 data 17,17,17,17,17,17,17,17,17,17,17,17
720 data 32,32,32,32,32,32,32,72,69,76,76,79,46,17,17
730 data 32,32,32,84,72,73,83,32,73,83,32,65,32,84,69,83,84,46,17,17,32,32,32
740 data 92,94,61,92,94,61,92,94,61,92,94,61,92,94,61,92,94,61,92,94,61,92,94
750 data 61,95,83,95,84,95,73,95,76,95,76,32,95,95,95,95,84,95,69,95,83,95,84
760 data 95,73,95,78,95,71,46,17,17,66,32,32,32,32,32,32,32,32,32,32,32,77,200
770 data 17,17,17,17,17,17,32,32,78,79,87,32,80,82,69,83,83,32,83,72,73,70,84
780 data 46,255
1000 printchr$(19):forq=1to11:printchr$(17):next
1010 printchr$(29)chr$(29)"ig or little letters,";
1020 printchr$(29)chr$(29)chr$(29)"ix them up."
1030 return